﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Yatagan.BaseAspects
{
    public class MethodInvocationEventArgs : EventArgs
    {
        PostSharp.Laos.MethodInvocationEventArgs _postSharpMethodInvocationEventArgs;

        public MethodInvocationEventArgs(PostSharp.Laos.MethodInvocationEventArgs postSharpMethodInvocationEventArgs)
        {
            this._postSharpMethodInvocationEventArgs = postSharpMethodInvocationEventArgs;
        }

        
        public Delegate Delegate 
        {
            get
            {
                return this._postSharpMethodInvocationEventArgs.Delegate;
            }
        }
        

        public object ReturnValue 
        {
            get
            {
                return this._postSharpMethodInvocationEventArgs.ReturnValue;
            }
            set
            {
                this._postSharpMethodInvocationEventArgs.ReturnValue = value;
            }
        }

        public object[] GetArguments()
        {
            return this._postSharpMethodInvocationEventArgs.GetArguments();
        }
    }
}
